home *** CD-ROM | disk | FTP | other *** search
/ Champak 114 / Vol 114.iso / games / harry_po.swf / scripts / frame_14 / DoAction_4.as < prev    next >
Encoding:
Text File  |  2010-08-12  |  2.4 KB  |  67 lines

  1. function worldClicked(xm, ym, keyCode)
  2. {
  3.    var temp = iso.mapToIsoWorld(xm,ym);
  4.    var xm = temp[0];
  5.    var zm = temp[1];
  6.    if(!world.char.moving && xm >= 0 && xm <= world.width && zm >= world.length && zm <= 0)
  7.    {
  8.       var x = world.char.x;
  9.       var z = world.char.z;
  10.       world.char.startx = x;
  11.       world.char.startz = z;
  12.       world.char.endx = xm;
  13.       world.char.endz = zm;
  14.       world.char.movKey = keyCode;
  15.       var angleSpan = 45;
  16.       var angle = Math.atan2(zm - z,xm - x);
  17.       var realAngle = angle * 180 / 3.141592653589793;
  18.       realAngle += angleSpan / 2;
  19.       if(realAngle < 0)
  20.       {
  21.          realAngle += 360;
  22.       }
  23.       var frame = Math.ceil(realAngle / angleSpan);
  24.       world.char.clip.gotoAndStop("walk" + frame);
  25.       world.char.frame = frame;
  26.       world.char.moving = true;
  27.       var cosAngle = Math.cos(angle);
  28.       var sinAngle = Math.sin(angle);
  29.       world.char.xmov = world.char.speed * cosAngle;
  30.       world.char.zmov = world.char.speed * sinAngle;
  31.       world.char.feelerx = world.char.feeler * cosAngle;
  32.       world.char.feelerz = world.char.feeler * sinAngle;
  33.    }
  34. }
  35. function fnCaptureKeys()
  36. {
  37.    if(!world.char.teleporting)
  38.    {
  39.       var newx;
  40.       var newy;
  41.       if(Key.isDown(102) or Key.isDown(69) or Key.isDown(79) or Key.isDown(39))
  42.       {
  43.          newx = world.char.clip._x + world.cellWidth / 2;
  44.          newy = world.char.clip._y - (world.cellWidth / 2 - world.angleOffset);
  45.          gameMC.worldClicked(newx,newy,Key.getCode());
  46.       }
  47.       else if(Key.isDown(100) or Key.isDown(85) or Key.isDown(81) or Key.isDown(38))
  48.       {
  49.          newx = world.char.clip._x - world.cellWidth / 2;
  50.          newy = world.char.clip._y - (world.cellWidth / 2 - world.angleOffset);
  51.          gameMC.worldClicked(newx,newy,Key.getCode());
  52.       }
  53.       else if(Key.isDown(99) or Key.isDown(76) or Key.isDown(68) or Key.isDown(40))
  54.       {
  55.          newx = world.char.clip._x + world.cellWidth / 2;
  56.          newy = world.char.clip._y + (world.cellWidth / 2 - world.angleOffset);
  57.          gameMC.worldClicked(newx,newy,Key.getCode());
  58.       }
  59.       else if(Key.isDown(97) or Key.isDown(65) or Key.isDown(74) or Key.isDown(37))
  60.       {
  61.          newx = world.char.clip._x - world.cellWidth / 2;
  62.          newy = world.char.clip._y + (world.cellWidth / 2 - world.angleOffset);
  63.          gameMC.worldClicked(newx,newy,Key.getCode());
  64.       }
  65.    }
  66. }
  67.